package com.xiangge.method;

import java.util.Scanner;

// 有参无返回值
public class MethodDemo3 {
    public static void main(String[] args) {
        System.out.println("输入第1个数：");
        int score1 = new Scanner(System.in).nextInt();
        System.out.println("输入第2个数：");
        int score2 = new Scanner(System.in).nextInt();
        System.out.println("输入第3个数：");
        int score3 = new Scanner(System.in).nextInt();
        // 调用方法，带上参数
        getScore(score1,score2,score3);
        System.out.println();
        System.out.println("**********************");

        // 键盘录入变量
        System.out.println("请输入一个整数：");
        int n = new Scanner(System.in).nextInt();
        // 无返回值可以直接调用方法
        getValue(n);
        System.out.println();
        System.out.println("**********************");

        // 键盘录入变量
        System.out.println("请输入一个整数：");
        int m = new Scanner(System.in).nextInt();
        // 无返回值可以直接调用方法
        getFlag(m);
        // 也可以使用for循环多次输出
        for (int i = 2; i < 100; i++) {
            getFlag(i);
        }
    }
    public static void getFlag(int m){
        // if单选结构进行数据校验
        if (m < 2){
            System.err.println("数据不合法");
            return;
        }
        // 假设m是素数
        boolean flag = true;
        // 使用for循环来定义2到m-1之间的所有数
        loop:for (int i = 2; i < m - 1; i++) {
            if (m % i == 0){
                flag = false;
                break loop;
            }
        }
        // 判断flag
        if (flag == true){
            System.out.println(m + "是素数");
        }else {
            System.out.println(m + "是素数");
        }
    }
    public static void getValue(int n){
        // 定义int类型的变量
        int num = 0;
        // 定义temp作为次数，用来记录除了多少次
        int temp = 1;
        //使用if单选结构来排除错误输入
        if (n < 0){
            System.err.println("输入错误");
            return;
        }
        // 不知道次数，是个死循环，使用while(true)
        while (true){
            // 定义bit作为余数
            int bit = n % 2;
            // num累加
            num =(int) (bit * Math.pow(10,(temp-1)) + num);
            n = n / 2;
            // if单选结构判断是否除尽
            if (n == 0){
                break;
            }
            temp++;
        }
        System.out.println(num);
    }
    public static void getScore(int score1,int score2,int score3){
        if (score1 > score2 && score1 >score3){
            System.out.println("最高分为：" + score1);
        }else if (score2 > score1 && score2 > score3){
            System.out.println("最高分为：" + score2);
        }else {
            System.out.println("最高分为：" + score3);
        }
    }
}
